package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.Role;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface RoleDao {

    Set<Role> findByUserId(Integer id);

    void add(Role role);

    Role findById(int id);

    List<Integer> findPermissonByRoleId(Integer id);


    void edit(Role role);

    void deleteById(Integer id);

    List<Role> findAll();

    Page<Role> selectByCondition(String queryString);

    void setRoleAndPermission(Map<String, Integer> map);

    List<Integer> findMenuByRoleId(Integer id);

    List<Map<String, Object>> findRoleCount();

    void deleteAssociationpermission(Integer id);

    void deleteAssociationmenu(Integer id);

    long findPermissionCountByRoleId(Integer id);

    long findMenuCountByRoleId(Integer id);
}
